package com.baibei.ebec.user.mine;

import com.baibei.basic.IPresenter;
import com.baibei.basic.IPresenterView;
import com.baibei.model.PayModeInfo;
import com.baibei.model.UserInfo;

/**
 * Created by shenminjie on 2017/10/13.
 * mail:shenminjie@100bei.com
 */

public class MineContract {

    /**
     * 视图层
     */
    interface View extends IPresenterView {

        /**
         * 检验资金密码成功
         */
        void onCheckFundSuccess(String password, PayModeInfo info);

        /**
         * 检验资金密码失败
         */
        void onCheckFundFailed(String msg, boolean isLock);

        /**
         * 未足够提现余额
         */
        void onNotEnoughWithDraw(String msg);

        /**
         * 显示加载
         */
        void showLoading();

        /**
         * 关闭加载
         */
        void hideLoading();

        /**
         * 获取用户信息
         *
         * @param userInfo userInfo
         */
        void onUpdateUserInfo(UserInfo userInfo);

        /**
         * 设置个人中心消息按钮状态
         */
        void onSetMsgStatus(String status);
    }

    /**
     * 表现层
     */
    interface Presenter extends IPresenter {

        /**
         * 检验余额
         * 获取充值渠道
         * 校验资金密码
         *
         * @param password password
         */
        void withdraw(String password);

        /**
         * 更新用户信息
         */
        void updateUserInfo();

        /**
         * 获取消息中心是否有新消息
         */
        void getIfHasNewMsg(String userId,String accessToken);


    }
}
